1. Field of the Invention
The invention relates to a device and related method for updating software, and more particularly, to a device and related method capable of automatically updating a system software of an embedded system.
2. Description of the Prior Art
Please refer to FIG. 1, which is a diagram of an embedded system 100 according to the prior art. The typical prior art embedded system 100 comprises a micro-controller 104, a plurality of storage devices 102 and 106, and a downloading interface 108. As shown in FIG. 1, the micro-controller 104, the storage devices 102 and 106, and the downloading interface 108 transfer data to each other through a bus 101. The storage device 102 is utilized to store a system software Sys_1 and a boot image Boot_1. Generally speaking, the storage device 102 is a non-volatile memory (e.g., a flash memory). The micro-controller 104 is utilized to respectively transform the system software Sys_1 and boot image Boot_1 into a system code Sys_Code and a boot code Boot_Code and orderly execute the boot code Boot_Code and the system code Sys_Code to control booting of the embedded system 100. The storage device 106 is utilized to temporarily store the above-mentioned system code Sys_Code and the boot code Boot_Code. Generally speaking, the storage device 106 is a volatile memory (e.g., a random access memory). The downloading interface 108 is coupled to a computer host 130 through a data transmission media 120. Furthermore, the computer host 130 stores another system software Sys_2. For the prior art embedded system 100, the downloading interface 108 can be a serial port, a joint test action group (JTAG) interface, or a network interface. However, users must operate the computer host 130 manually to upload the system software Sys_2 to the embedded system 100 through the data transmission media 120 such as a cable, a LAN, a WLAN, or an internet to perform an update to the original system software Sys_1.
Please refer to FIG. 2, which is an operational flow chart of updating the system software Sys_1 of the embedded system 100 shown in FIG. 1. The flow chart comprises the following steps:
Step 200: Couple the embedded system 100 to the computer host 130 through the downing interface 108 and the data transmission media 120;
Step 210: A user manually operates the computer host 130, and uploads the system software Sys_2 stored in the computer host 130 to the storage device 106 of the embedded system 100; and
Step 220: The micro-controller 104 reads the system software Sys_2 stored in the storage device 106 and utilizes the system software Sys_2 to update the original software Sys_1 stored in the storage device 104.
As mentioned above, the prior art embedded system 100 requires a manual operation of another external computer host 130 to update its system software (e.g., an operating system). Therefore, a great amount of time is required when the amount of system software to be updated is large. Furthermore, because the embedded system relies on users to manually operate the computer host 130 to update the system software, the users need to own the computer host 130 and must also have knowledge of operating the computer host 130. Therefore, the inconvenience for users is a serious problem.